1
빌드 최적화: 릴리스 프로파일 이해하기
AI034Lesson 14
00:00

러스트에서는 릴리스 프로파일 은 개발자가 컴파일 시간과 실행 시간 성능 사이의 균형을 조절할 수 있도록 해주는 미리 정의된 설정입니다. 컴파일 시간 그리고 런타임 성능이 설정들을 조정함으로써, 빠른 반복 개발 또는 프로덕션 배포와 같은 현재 작업 흐름에 맞게 컴파일러의 동작을 맞춤 설정할 수 있습니다.

1. 개발용 프로파일과 릴리스 프로파일 비교

Cargo에는 두 가지 주요 프로파일이 있습니다: dev (다음 명령어에서 사용됨: cargo build) 그리고 release (다음 명령어에서 사용됨: cargo build --release)입니다. 개발용 프로파일은 빠른 컴파일을 위해 최적화되어 있지만 코드 실행 속도는 느립니다. 반면 릴리스 프로파일은 최대 효율을 위한 머신 코드 최적화에 더 많은 시간을 투자합니다.

2. 최적화 수준 설정

최적화 수준 opt-level 설정은 성능 조절의 주요 기능입니다. 값은 0에서 3까지 설정할 수 있습니다:

  • 0: 최적화 없음. 빠른 빌드, 느린 코드. (개발용 기본값)
  • 1-2: 중간 수준의 최적화.
  • 3: 강력한 최적화. 느린 빌드, 가장 빠른 코드. (릴리스용 기본값)
  • "s" 또는 "z": 속도 대신 바이너리 크기를 최소화하도록 최적화합니다.
프로파일기본 최적화 수준목표
dev0빠른 반복 개발
release3프로덕션 성능

3. 프로파일 커스터마이징

당신은 자신의 Cargo.toml파일에서 이러한 기본 설정을 재정의할 수 있습니다. 최적화되지 않은 코드가 테스트에 너무 느릴 경우(예: 무거운 시뮬레이션에서), 하지만 전체 릴리스 빌드에 너무 오래 걸리는 상황에 유용합니다.

[profile.dev]
opt-level = 1 # level 0보다 빠른 코드, 여전히 빠르게 컴파일 가능
main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>